using System;
using System.ComponentModel;

namespace LiveLinq.Internal
{
	class NullNotifyPropertyChanged : INotifyPropertyChanged
	{
		static readonly NullNotifyPropertyChanged _instance = new NullNotifyPropertyChanged();
		public static NullNotifyPropertyChanged Instance { get { return _instance; } }

		NullNotifyPropertyChanged() {}

		#region INotifyPropertyChanged Members

		event PropertyChangedEventHandler INotifyPropertyChanged.PropertyChanged
		{
			add { }
			remove { }
		}

		#endregion

		public override bool Equals(object obj)
		{
			throw new NotImplementedException();
		}

		public override int GetHashCode()
		{
			throw new NotImplementedException();
		}
	}
}